In the conventional multiplex system in practical use, a plurality of computers redundantly execute identical processing. Such a multiplex system provides improved availability because, even if failure occurs at any one of the computers, the other computers continue processing.
One of known technologies used to implement the multiplex system is ordered multicasting. The ordered multicasting is processing of distributing input data as a processing target to a plurality of computers and determining a processing order of the input data. Execution of the ordered multicasting allows computer to process identical input data in an identical order. As a result, each computer can output an identical output data string.
In the ordered multicasting, input data is ordered while being reciprocated between computers. A processing time of communicating data between computers in the ordered multicasting is long as compared to other processing times. Thus, the number of times of data reciprocation between computers in the ordered multicasting is a bottleneck of speeding up in the multiplex system.
For this reason, the number of times of data reciprocation between computers is desirably reduced in the ordered multicasting. For example, reduction in the number of times of data reciprocation in the best case is important for execution of the ordered multicasting in a short time.